#include <iostream>
#include <set>
using namespace std;

void test(){
    set<int> number;
    //传递一个迭代器的方式
    int arr[5]={9};
    set<int> number2(arr,arr+5);
    //拷贝构造函数
    set<int> number3=number2;
    //初始化列表
    set<int>number4{1,2,3,4,5};

    //遍历
    //遍历的方式
    //增强for循环i
    //number4里面迭代出来的元素赋值给到ele
    for(auto& ele:number4){
      cout<<ele<<endl;
    }
    //迭代器的啊方式
    auto it1=number4.begin();
    auto it2=number4.end();
    while(it1!=it2){
        cout<<*it1<<endl;
        ++it1;
    }
}
bool is_exist(const set<int>num,int & key){
  size_t count =num.count(key);
    return count==1;
}
bool is_exist2(const set<int>num,const int& key){
    //返回值是一个迭代器，
    //如果返回的是end()的迭代器，表示key不存在
    //如果key值存在，返回对应元素位置的迭代器
    auto result=num.find(key);
    if(result==num.end()){
        return false;
    }
    cout<<result<<endl;
    return count==1;
    
}
void tset2(){
    set<int> number{1,2,3,4,5,6,7,8,};
    cout<<is_exist(number,2)<<endl;

}
int main(int argc, char * argv[]){
    test();
    return 0;
}

